草庐IT

TypeScript 运算符

全部标签

javascript - TypeScript:类型定义的引用子类型(接口(interface))

我在我的TypScript中使用以下类型:interfaceExerciseData{id:number;name:string;vocabulary:{from:string;to:string;}[];}现在我想创建一个与属性vocabulary类型相同的变量,尝试以下操作:varvocabs:ExerciseData.vocabulary[];但这不起作用。是否有可能以某种方式引用子类型?或者我必须做这样的事情吗?interfaceExerciseData{id:number;name:string;vocabulary:Vocabulary[];}interfaceVocabu

javascript - 运算符 '+' 不能应用于 TypeScript 中的类型 'String' 和 'String'

我是TypeScript的新手,正在尝试使用它。但我面临一个有线问题。当我尝试使用+运算符连接两个String类型时,出现错误运算符“+”不能应用于类型“String”和“String”我的代码快照是varfirstName:String='Foo';varlastName:String='Bar';varname=firstName+lastName;如果我使用string而不是String或添加额外的''它工作正常。我检查过,在JavaScript中我们可以在两个String对象上使用+那么为什么它在TypeScript中显示错误?是错误还是功能?我肯定错过了什么。详细解释表示赞赏

javascript - minus minus 小于 "-->"运算符如何在 JavaScript 中工作?

这个问题在这里已经有了答案:Whatisthe"-->"operatorinC++?(29个答案)关闭6年前。while(max-->min){console.log(n);}我知道-->会降低值,但是-->在官方文档中有记载吗?

javascript - 类绑定(bind)三元运算符

我想将一些相当繁琐的逻辑应用于元素类。:class="{sportTypes.sports.indexOf(sport)>-1?'is-primary':'is-outlined'}"以上不起作用,而以下起作用::class="{'is-outlined':sportTypes.sports.indexOf(sport)>-1}"出现以下错误templatesyntaxerror-invalidexpression:知道第一部分有什么问题吗? 最佳答案 你有不必要的牙套。后一个表达式是一个对象,而第一个表达式只是一个返回字符串的三元

javascript - 为什么赋值运算符返回一个值而不是一个引用?

我看到下面关于这个site解释的例子并认为两个答案都是20而不是返回的10。他写道,逗号和赋值都返回一个值,而不是引用。我不太明白那是什么意思。我理解它与将变量传递给函数或方法有关,即原始类型按值传递,对象按引用传递,但我不确定它在这种情况下如何应用。我也了解上下文和“this”的值(在stackoverflow的帮助下)但我认为在这两种情况下我仍然会调用它作为一种方法,foo.bar()这意味着foo是上下文但是似乎两者都会导致函数调用bar()。这是为什么?这意味着什么?varx=10;varfoo={x:20,bar:function(){returnthis.x;}};(foo

javascript - JavaScript 中所有二元运算符的列表

我正在尝试了解JavaScript中二元运算符(仅二元运算符)的可能性。到目前为止,我发现的二元运算符列表如下。它们主要来自thislist,但是有没有遗漏?请注意,我特别关注二元运算符,根据上面列出的来源,它被定义为用于两个对象的二元运算符(这准确吗?)。我还添加了@zessx的补充内容。+//Add-//Subtract///Dividedby*//Multiple%//Modulus//Greaterthan&//AND|//OR^//XOR~//Inverteachbits>//Moveallbitsontotheright>>>//Moveallbitsontotherigh

javascript - 克隆 TypeScript 对象

我有一个typescript类exportclassRestaurant{constructor(privateid:string,privatename:string){}publicgetId():string{returnthis.id;}publicsetId(_id:string){this.id=_id;}publicgetName(){returnthis.name;}publicsetName(_name:string){this.name=_name;}}然后我有一个这个类的实例(这是一个例子):restaurant:Restaurant=newRestaurant(

javascript - 使用 ES6 + Flow 代替 TypeScript

我正在为JavaScript应用建模。此应用程序的主要功能是使用RESTAPI来配置和显示具有某些自定义输入类型的表单。我正在考虑使用TypeScript利用类型和类。但经过一些谷歌搜索后,我意识到我可以使用JavaScriptES6+Flow获得非常相似的结果。(可能还有Babel)。我的问题是:这两种方法真的很相似还是我搞砸了?在ES6+Flow或TypeScript之间做出正确选择时,我应该考虑什么?感谢您的帮助。 最佳答案 免责声明:我在Flow团队工作。总的来说,我认为Flow更注重稳健性,而Typescript更注重易用

javascript - Angularjs + Typescript,如何将 $routeParams 与 IRouteParamsService 一起使用

我正在使用$routeParams从URI中提取属性并为它们设置本地变量。当我使用typescripts键入设置$routeParams的类型时,我无法登录访问$routeParams。如何访问$routeParams中的属性?classController{constructor($routeParams:ng.route.IRouteParamsService,private$location:ng.ILocationService)this.propetry1=this.getProperty1($routeParams.property1);}property1:string;

javascript - TypeScript 类函数不可用

我正在尝试调用TypeScript类的实例方法(在ASP.NETMVC项目中)。但是,在运行时,我会遇到类似0x800a01b6-JavaScriptruntimeerror:Objectdoesn'tsupportpropertyormethod'checkString'的异常。我在jsfiddle中复制了生成的JavaScript该方法似乎有效的地方。我不是真正的JavaScript专家,所以非常感谢任何帮助!到目前为止我尝试过的事情:不同的浏览器(Chrome:UncaughtTypeError:undefinedisnotafunction,FF:TypeError:this.